1. Field of the Invention
Embodiments of the present invention generally relate to a data storage management and, more particularly, to a method and apparatus for providing a host-independent name that identifies a meta-device to which a plurality of host computers share access through such a host-independent name.
2. Description of the Related Art
A plurality of host computers may use one or more storage devices (e.g., a storage array comprising a plurality of hard disks) for managing critical data. The one or more storage devices may be maintained in one or more storage enclosures and partitioned into a plurality of storage volumes. In a Small Computer System Interface (SCSI) configuration, the plurality of storage volumes are referred to as Logical Units, which are represented by Logical Unit Numbers (LUNs). Disk array controllers, which typically have more than one port, virtualize the disks within the array and present them to the plurality of host computers as LUNs. Furthermore, one or more LUNs of the plurality of LUNs may be represented as a meta-device. As such, the meta-device is a representation of the one or more LUNs on a particular host computer that as viewed through multiple paths (e.g., cables) from the particular host computer.
The plurality of host computers may retrieve data from and store data in the meta-device through an Applicant Programming Interface (API) for the LUNs. The data is transmitted through one or more Input/Output (I/O) paths that include a host bus adapter, cables, a storage network switch, a storage device adapter port, and, in the case of storage arrays (i.e., disk arrays), a disk controller. Multi-pathing software (e.g., Dynamic Multi-pathing software for VERITAS STORAGE FOUNDATION) manages multiple and distinct I/O paths to a particular LUN in order to maintain availability of the data.
When the LUN is shared amongst the plurality of host computers, software (e.g., an operating system) on each host computer assigns a different name to the LUN based on an I/O path to the LUN as seen by each host computer. Hence, each host computer may assign a host-centric that may include a Host Bus Adapter (HBA) instance number, a SCSI target identifier and a LUN identifier. Such information is provided by software operating on the HBA and/or the storage array. Multi-pathing software may use the Operating System assigned name or a name that is created using another host-centric algorithm. As a result, the same LUN in the storage subsystem is represented through meta-devices with different names across the plurality of host computers that share the LUN.
The assignment of different names to the same LUN causes confusion and difficulties for administrators and storage management software. Consequently, the computing environment is more error prone. Another consequence of typical host-centric names is that such names do not identify the LUN when system administrators communicate with storage administrators. Furthermore, the only LUN identifiers that can be provided in a reliable and array independent fashion are the LUN serial number. The LUN serial number may be a long hexadecimal string that would be challenge to use for day-to-day operational tasks.
Therefore, there is a need in the art for a method and apparatus for providing a host-independent name for a meta-device that is consistently used by host computers to access a LUN represented by the meta-device.